﻿using System.ComponentModel.DataAnnotations.Schema;

namespace JST.TPLMS.Entitys;

public class DeliveryOrder
{
    public DeliveryOrder()
    {
        this.Id = 0;
        this.AgentName = string.Empty;
        this.AgentNo = string.Empty;
        this.AgentSccd = string.Empty;
        this.ConsigneeName = string.Empty;
        this.ConsigneeNo = string.Empty;
        this.ConsigneeSccd = string.Empty;
        this.ConsignerName = string.Empty;
        this.ConsignerNo = string.Empty;
        this.ConsignerSccd = string.Empty;
        this.DeliveryDate = DateTime.Now;
        this.DeliveryNo = string.Empty;
        this.ForwardingClause = string.Empty;
        this.FreightClause = string.Empty;
        this.LCLFCL = string.Empty;
        this.PayMode = string.Empty;
        this.Rcv = string.Empty;
        this.Remark = string.Empty;
        this.ShipperName = string.Empty;
        this.ShipperNo = string.Empty;
        this.ShipperSccd = string.Empty;
        this.Status = string.Empty;
        this.SupplierId = 0;
        this.CreateTime = DateTime.Now;
    }
    
    [DatabaseGenerated(DatabaseGeneratedOption.Identity)]
    public int Id { get; set; }
    public int SupplierId { get; set; }
    public string DeliveryNo { get; set; }
    public string ConsignerSccd { get; set; }

    public string ConsignerNo { get; set; }

    public string ConsignerName { get; set; }

    public string ConsigneeSccd { get; set; }

    public string ConsigneeNo { get; set; }

    public string ConsigneeName { get; set; }

    public string ShipperSccd { get; set; }

    public string ShipperNo { get; set; }

    public string ShipperName { get; set; }

    public string AgentSccd { get; set; }

    public string AgentNo { get; set; }

    public string AgentName { get; set; }


    public DateTime DeliveryDate { get; set; }

    public string FreightClause { get; set; }

    public string ForwardingClause { get; set; }

    public string PayMode { get; set; }

    public string Rcv { get; set; }

    public string Status { get; set; }

    public string LCLFCL { get; set; }

    public string Remark { get; set; }

    public DateTime CreateTime { get; set; }
    [NotMapped] 
    public List<DeliveryOrderDetail> DeliveryOrderDetail { get; set; }
}